package com.itheima.duotai5;

public class Test {
    public static void main(String[] args) {
        useDog(new Dog());
        useCat(new Cat());
        userAnimal(new Dog());
        userAnimal(new Cat());
    }
    //定义方法  调用 动物吃  动物喝
    //参数   动物
    //返回值 void
    public  static void useDog(Dog dog){
        dog.drink();
        dog.eat();
        dog.watchHome();
    }
    public  static void useCat(Cat cat){
        cat.drink();
        cat.eat();
    }
    public static void  userAnimal (Animal a){
        a.drink();
        a.eat();
       // a.watchHome();不能使用子类特有的方法
    }

}


abstract class Animal{
    public void drink(){
        System.out.println("动物喝水");
    }
    public abstract  void eat();
}
class Dog extends Animal{

    @Override
    public void eat() {
        System.out.println("狗吃骨头");
    }
    public void watchHome(){
        System.out.println("狗看家");
    }
}class Cat extends Animal{

    @Override
    public void eat() {
        System.out.println("猫吃鱼");
    }
}